package com.nidu.demo.notify.gateway;

import com.alibaba.cola.dto.PageResponse;
import com.nidu.demo.notify.model.NotifyMessage;
import com.nidu.demo.notify.model.NotifyMessageCriteria;

import java.util.List;
import java.util.Set;

/**
 * 站内信消息网关接口
 *
 * @author auto
 */
public interface NotifyMessageGateway {

    NotifyMessage create(NotifyMessage notifyMessage);

    NotifyMessage update(NotifyMessage notifyMessage);

    void deleteById(Long id);

    void deleteByIds(Set<Long> ids);

    NotifyMessage getById(Long id);

    List<NotifyMessage> getByIds(Set<Long> ids);

    List<NotifyMessage> listByCondition(NotifyMessageCriteria criteria);

    PageResponse<NotifyMessage> pageByCondition(NotifyMessageCriteria criteria);

    void updateReadStatus(Long id);
}
